package string;
/**
 * java.lang.StringBuilder专门用于编辑字符串内容的工具类
 * 其内部维护一个可变的char数组
 * 同时提供了编辑字符串内容的相关操作: 增删改插
 */
public class StringBuilderDemo {
    public static void main(String[] args) {
        String str="好好学习Java";
        StringBuilder builder=new StringBuilder(str);



        //append():追加内容-------子末尾追加
        builder.append("，找个好工作");//在末尾追加
        System.out.println(builder);//好好学习Java，找个好工作

        //replace():替换部分内容（含头不含尾，从0开始）
        builder.replace(9,16,"就是为了改变世界");//替换下标9-15
        System.out.println(builder);//好好学习Java，就是为了改变世界

        //delete():删除部分内容（含头不含尾，从0开始）
        builder.delete(0,8);//删除下标0-7，
        System.out.println(builder);//，就是为了改变世界

        //insert():在指定位置插入内容
        builder.insert(0,"活着");//在下标0的位置插入 活着
        System.out.println(builder);//活着，就是为了改变世界


        //StringBuilder 的创建方式：
        /*
        StringBuilder builder1=new StringBuilder();
        StringBuilder builder2=new StringBuilder("abc");

        //String和StringBuilder互转
        String str1="abc";
        StringBuilder builder3=new StringBuilder(str);//abc串，基于String对象构造StringBuilder
        String str2=builder3.toString();//将builder转换为String
         */
    }
}
